3 subject="""comment 1"""
4 date="2023-04-04T17:07:37Z"
6 This is intentional, see [[!commit 451171b7c1eaccfd0f39d4ec1d64c6964613f55a]]
7 which changed setUrlPresent to only update presence info when the url
8 belongs to the web but not when it's claimed by other special remotes.
10 It makes sense for registerurl to be symmetric with rmurl, and rmurl only
11 updates presence info when the url is a web url.
13 To the extent I've been able to follow the complex reasoning there for why,
14 part of it is clear: The web special remote is different from other special
15 remotes in that content cannot be dropped from it by git-annex, and the url is
16 the only pointer to content. So when rmurl removes the last web url, it makes
17 sense to treat the content as no longer present on the web. But if the url is
18 claimed by another special remote, which does support dropping content, the
19 content would still be present on it after removing its url, and would be
20 accessible w/o using that url, and `git-annex fsck --fast --from` would notice
21 it was present and fix up the location log if it didn't show it as content.
23 Also note that the rmurl man page documents this when it says:
25 Removing the last web url will make git-annex no longer treat content as being
26 present in the web special remote.
28 All you need to do is use `git-annex setpresentkey` along with registerurl.